Controllers are used on a wide variety of devices and systems for controlling various functions in homes and/or buildings and their related grounds. Some controllers have schedule programming that modifies device parameters such as set points as a function of date and/or time. Some such device or system controllers that utilize schedule programming for controlling various functions in homes and/or buildings and their related grounds include, for example, HVAC controllers, water heater controllers, water softener controllers, security system controllers, lawn sprinkler controllers, and lighting system controllers.
In a typical HVAC application, for example, such controllers can be employed to monitor and, if necessary, control various environmental conditions occurring within a home or office building. The controller may include a microprocessor that interacts with other components in the system to regulate the temperature, humidity, venting, and/or air quality occurring at one or more locations. An internal sensor located within the controller and/or one or more remote sensors may be employed to sense when the temperature and/or humidity level reaches a certain threshold level, causing the controller to send a signal to activate or deactivate one or more components in the system.
The controller may be equipped with a user interface that allows the user to monitor and adjust various parameters of the controller. With more modern designs, the user interface typically comprises a liquid crystal display (LCD) or light emitting diode (LED) display inset within a controller housing that contains a microprocessor or the like, an I/O interface, and other components of the controller. The user interface may include a menu-driven interface that allows the user to scroll through one or more menus or screens to adjust the different settings on the controller. In some cases, a routine programmed within the controller prompts the user at each menu or screen to input various commands into the interface to adjust the controller settings.
In certain designs, the user interface can be configured to permit the user to program the controller to run on a certain schedule. For example, the controller can include a scheduling routine that allows the user to adjust the heat and cool set points for one or more periods during a particular day in order to conserve energy. To view the parameters for the schedule, many controllers require the user to initiate an editing mode within the controller, causing the controller to display the parameters for the selected day and/or period along with prompts for modifying the parameters. Within the editing mode, the user can scroll through the various schedule parameters and, if desired, modify the schedule according to the user's needs or preferences. After the user has finished viewing the current settings and has made any desired modifications to the schedule, the user can then send a signal to the controller to either save the modified parameters in memory, or terminate the scheduling routine and discard any changes made.
Because many controllers require the user to initialize an editing mode in order to display the current schedule parameters, users are often wary of interacting with the interface. The user may fear making inadvertent changes or canceling the schedule altogether by pressing the wrong button on the interface while the controller is in the editing mode. In some cases, the user may be concerned with interfering with the normal operation of the controller, or with modifying other controller settings. As such, there is a need in the art to provide a controller having a user interface that allows the user to display the current scheduling parameters without the risk or fear of accidental schedule modification.